class Dog{//定义了一个Dog类

    public String name;
    public int age;
    public String color;
    public void barks(){//定义Dog类的barks成员方法
        System.out.println(this.name+"摇尾巴！！");//this.成员变量
    }

    //提供带3个参数的构造方法
    public Dog(String name, int age, String color) {
        this();//调用不带参数的构造方法
        this.name = name;
        this.age = age;
        this.color = color;
    }
    //不带参数的构造方法
    public Dog() {
       this("来福",3,"黄色");//通过this关键字来调用带三个参数的构造方法，请必须放在方法的第一行
    }


}
public class Test {
    public static void main(String[] args) {
        Dog dog=new Dog();//调用不带参数的构造方法
        dog.barks();
    }
}
